package extra01GUI;

import Extra01.IFiguraInfo;
import Extra01.Circulo;
import Extra01.Rectangulo; 
import Extra01.Triangulo;

public class UtilidadGeometria {
	
	private static IFiguraInfo info;
	
	public static String Circulo(double dato){

		info = new Circulo(dato);

		return CrearTexto();
	}
	
	public static String Rectangulo(double[] datos){
		boolean estado = true;

		switch(datos.length){
		case 1:
			info = new Rectangulo(datos[0]);
			break;
		case 2:
			info = new Rectangulo(datos[0],datos[1]);
			break;		
		default:
			estado=false;
			break;
		}
		
		if(estado){
			return CrearTexto();
		}else{
			return "Parametros no compatibles";
		}
	}
	
	public static String Triangulo(double[] datos){
		boolean estado = true;
		
		switch(datos.length){
		case 1:
			info = Triangulo.CrearTrianguloEquilatero(datos[0]);
			break;
		case 2:
			info = Triangulo.CrearTrianguloIsoceles(datos[0],datos[1]);
			break;
		case 3:
			info = Triangulo.CrearTrianguloEscaleno(datos[0],datos[1],datos[2]);
			break;
		default:
			estado=false;
			break;
		}
		if(estado){
			return CrearTexto();
		}else{
			return "Parametros no compatibles";
		}
	}

	private static String CrearTexto(){
		StringBuilder texto = new StringBuilder();
		
		texto.append(info.getInfo() + "\n");
		texto.append("Area: " + info.getArea() + "\n");
		texto.append("Perimetro: " + info.getPerimetro());
		
		return texto.toString();
	
	}
}
